package cn.zhf.shop.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

@ApiModel(value = "cn-zhf-shop-entity-Orders")
@Data
@NoArgsConstructor
public class Orders {
    /**
     * 订单id
     */
    @ApiModelProperty(value = "订单id")
    private String id;

    /**
     * 课程编号
     */
    @ApiModelProperty(value = "课程编号")
    private Integer lessonId;

    /**
     * 用户编号
     */
    @ApiModelProperty(value = "用户编号")
    private String userId;

    /**
     * 机构名称
     */
    @ApiModelProperty(value = "机构名称")
    private String orgName;

    /**
     * 校区名称
     */
    @ApiModelProperty(value = "校区名称")
    private String campusName;

    /**
     * 付款人姓名
     */
    @ApiModelProperty(value = "付款人姓名")
    private String userName;

    /**
     * 付款人手机号
     */
    @ApiModelProperty(value = "付款人手机号")
    private String userPhone;

    /**
     * 付款人身份证
     */
    @ApiModelProperty(value = "付款人身份证")
    private String userIdCard;

    /**
     * 单价
     */
    @ApiModelProperty(value = "单价")
    private BigDecimal singlePrice;

    /**
     * 数量
     */
    @ApiModelProperty(value = "数量")
    private Integer amount;

    /**
     * 总价
     */
    @ApiModelProperty(value = "总价")
    private BigDecimal totalPrice;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date createTime;

    /**
     * 支付时间
     */
    @ApiModelProperty(value = "支付时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date payTime;

    /**
     * 状态 (0 未支付 1 已支付 2 退款)
     */
    @ApiModelProperty(value = "状态 (0 未支付 1 已支付 2 退款)")
    private Integer state;

    /**
     * 课程图片
     */
    @ApiModelProperty(value = "课程图片")
    private String lessonImg;

    /**
     * 支付方式
     */
    @ApiModelProperty(value = "支付方式")
    private Integer payType;

    /**
     * 推荐人id
     */
    @ApiModelProperty(value = "推荐人id")
    private Integer referenceId;

    /**
     * 推荐人领导id
     */
    @ApiModelProperty(value = "推荐人领导id")
    private Integer head;

    /**
     * 订单收货地址
     */
    @ApiModelProperty(value = "订单收货地址")
    private String ordersReceivingAddress;


    private String lessonName;

    private String referenceName;

    /**
     * 机构id
     */
    @ApiModelProperty(value = "机构id")
    private Integer campus;
}